Over the air provisioning of mobile device settings

ABSTRACT

A mobile device has a display, a memory, at least one processor, and executable instructions stored in the memory. The executable instructions, when executed by the at least one processor, (i) cause the mobile device to communicate over a cellular network with one or more remote servers to receive mobile network carrier option data for the mobile device, wherein the one or more remote servers are operated by an entity that is not a mobile network carrier identified by the mobile network carrier option data, (ii) display on the display, based on the received mobile network carrier option data, a user interface presenting a plurality of mobile network carriers, and (iii) in response to a selection, by a user of the mobile device from the user interface, of one of the plurality of mobile network carriers, cause the mobile device to be activated for use with the selected one of the plurality of mobile network carriers and enable access by the mobile device of wireless communication services provided by the selected one of the plurality of mobile network carriers for a service plan offered by the selected one of the plurality of mobile network carriers.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/521,076, filed on Jul. 24, 2019, which is a continuation of U.S.application Ser. No. 14/498,645, filed on Sep. 26, 2014, now U.S. Pat.No. 10,368,214, which is a continuation of U.S. application Ser. No.12/956,997, filed on Nov. 30, 2010, now U.S. Pat. No. 8,862,115, whichis continuation of U.S. application Ser. No. 12/505,306, filed on Jul.17, 2009, now U.S. Pat. No. 7,865,182, which is a continuation of U.S.application Ser. No. 10/682,312, filed on Oct. 8, 2003, now U.S. Pat.No. 7,565,141, the entire contents of which are incorporated herein byreference.

TECHNICAL FIELD

This disclosure relates to providing services to a mobile device, andmore particularly to over the air provisioning of settings andapplications for one or more service providers.

BACKGROUND

Most mobile phones that are available to consumers are typically limitedto use with a particular service provider or carrier. This limitation onuse is the result of certain settings that are programmed into themobile phone at the time of manufacture. Thus, a particular model ofmobile phone may be manufactured in many different versions, one foreach service provider that offers the particular mobile phone.

Many carriers market mobile phones for use with their networks throughsmall retail stores that are associated with the carrier. Such storestypically limit their focus to the sale of phones that can be used withthe carrier, accessories for those phones, and calling plans for thecarrier. In addition, such stores may also provide some post-purchaseservices, such as repair, warranty, and technical support services, fortheir subscribers. Mobile phones may also be marketed through massretailers, such as Radio Shack, Wal-mart, and Costco. Typically, massretailers will offer mobile phones for multiple different carriers, butsuch retailers may be more limited in the types of post-purchaseservices they offer. Both types of retail outlets, however, typicallyprovide activation services, in which a salesperson programs the mobilephone with information necessary to use the mobile phone and notifiesthe carrier of the new subscriber's information.

SUMMARY

One result of the conventional practice of manufacturing phones so thatthey can be used with only one carrier is that, for any given serviceprovider, consumers have a somewhat limited selection of mobile phonemodels. Because each mobile phone typically is manufactured for use withonly a single service provider, manufacturers (and service providers)will offer fewer than every possible model for every service provider.Instead, they will choose a relatively small number of models to marketin connection with each service provider. Another result is thatretailers who offer the same mobile phone model for multiple differentservice providers must frequently keep on hand (and track) a largerinventory than would otherwise be necessary. For example, a retailermight offer a particular model of mobile phone for use with threedifferent service providers. Because the mobile phone is programmed inthe factory with different settings for each of the three providers, theretailer typically must carry a larger inventory than if the particularmodel could be used with any of the three carriers.

Techniques are described here that enable a mobile device to bemanufactured and sold without being limited to use in connection with aparticular service provider. Instead, the service provider may beselected at the time of or after purchase of the mobile device. Settingsthat correspond to the selected service provider and/or that enableaccess to the services of the selected service provider may bedownloaded to the mobile device over the air and used to change thesettings of the mobile device by an application on the mobile device.Service plans and applications can also be selected using theapplication.

In one general aspect, a request for mobile service subscription optionsmay be received from a mobile device, and data relating to mobileservice subscription options for selection by a user of the mobiledevice may be sent to the mobile device over a wireless communicationpath. A selection of one or more subscription options may be receivedfrom the mobile device over the wireless communication path, and aservice corresponding to the one or more selected subscription optionsmay be activated in response to the selection.

Implementations may include one or more of the following features. Forexample, the request for mobile subscription options from the mobiledevice may be an activation request. The mobile device may be a mobilephone, a personal digital assistant, a pager, or virtually any othermobile device having a wireless communications capability. The mobiledevice may be capable of operation with a number of service providers,and the data relating to mobile subscription options may identify anumber of available service providers. The selection of one or moresubscription options may be an identification of a selected serviceprovider. The available service providers may be mobile virtual networkoperators. Activating a service may include sending data representingone or more settings for the mobile device, with the data being sentover the wireless communication path. The one or more settings may allowthe mobile device to obtain service from the selected service provider.The one or more settings may include a preferred roaming list. The datarelating to mobile subscription options and the data representing one ormore settings for the mobile device may be adapted for use on Qualcomm'sBinary Runtime Environment for Wireless (BREW) platform on the mobiledevice.

The data relating to mobile subscription options may include anidentification of a number of available service plans. Activating aservice may involve selecting settings data associated with the selectedsubscription option from stored respective sets of settings dataassociated with each of the mobile services subscriptions options.

In another general aspect, settings for a mobile device may beprovisioned by associating a mobile device with a particular service,identifying settings data associated with the particular service from adatabase containing settings data for multiple services, and sendingsettings data for the particular service to the mobile device over awireless communication link. An application on the mobile device may beoperable to use the settings data to change operational settings for themobile device.

Implementations may include one or more of the following features. Forexample, the particular service comprises a mobile voice communicationservice associated with a specific service provider. The settings datamay include a preferred roaming list for the specific service provider.The settings data may identify operational settings that, when installedon the mobile device, enable the mobile device to access the particularservice provided by the specific service provider. The particularservice may be offered by a mobile virtual network operator. Theapplication on the mobile device may be adapted for use on a BinaryRuntime Environment for Wireless (BREW) platform on the mobile device.The multiple services may include multiple mutually exclusive mobilecommunication services, and the database of settings data may storesettings data for each of the mutually exclusive mobile communicationservices.

In another general aspect, a mobile device may include a transceiveroperable to communicate over a wireless communication link, one or morememories, and a processor. The one or more memories may store an addressof a server that stores settings data associated with one or more mobileservices. The memories may also store client software for an applicationexecution environment. The memories may be operable to store one or moreapplications that are executable on the client software and that includeinstructions for communicating with the server at the stored address,receiving settings data, and storing the received settings data in theone or more memories. The processor may be coupled to the transceiverand the one or more memories. The processor may be operable to executethe one or more stored applications and to control communications by thetransceiver.

Implementations may include one or more of the following features. Forexample, the server may be an application download server. The clientsoftware may be Binary Runtime Environment for Wireless (BREW) clientsoftware. The one or more applications may be adapted for execution bythe BREW client software. The received settings data may be settingsthat enable wireless communications using a particular service provider.The mobile device may include a visual display, and the one or moreapplications may include instructions for causing the processor toretrieve a list of available service providers from the server, displaythe list of available service providers on the visual display, receive auser selection of a particular service provider, and transmit anindication of the user selection from the transceiver to the server. Theone or more applications may include instructions for causing theprocessor to retrieve a list of available service plans from the server,display the list of available service plans on the visual display,receive a user selection of a particular service plan, and transmit anindication of the user selection from the transceiver to the server.

In yet another general aspect, a system may include an applicationdownload server and a mobile communication system interface. Theapplication download server may store mobile device settings foraccessing services associated with one or more mobile service providers.The application download server may be operable to selectively send themobile device settings to selected mobile devices for use in modifyingthe settings for each selected mobile device. The mobile communicationsystem interface may be adapted to connect the application downloadserver to a mobile communication system. The mobile device settings aresent to the mobile device over a wireless communication link between themobile device and the mobile communication system.

Implementations may include one or more of the following features. Forexample, the services associated with the one or more mobile serviceproviders may be wireless communication services. The mobile devicesettings may include settings necessary to enable the mobile devices toaccess the wireless communication services for the one or more mobileservice providers. The mobile device settings may include a plurality ofpreferred roaming lists, with each preferred roaming list associatedwith a particular service provider. A preferred roaming list may be sentto each mobile device, with the preferred roaming list corresponding toa selection of a service provider received through the mobilecommunication system interface from the mobile device. The applicationdownload server may further store applications for downloading to themobile devices through the mobile communication system. One or more ofthe applications may include instructions for enabling a user to selecta particular service provider from which to receive wirelesscommunication services.

In yet another general aspect, a method may include receiving a requestfor an application from a mobile device by at least one processor,transmitting the application to the mobile device by the at least oneprocessor, and storing application download event information by the atleast one processor. The application download event information may betransmitted to a transaction manager by the at least one processor, andthe transaction manager may determine one or more usage records based onthe application download event information.

In another aspect, a mobile device has a display, a memory, at least oneprocessor, and executable instructions stored in the memory. Theexecutable instructions, when executed by the at least one processor,(i) cause the mobile device to display on the display a user interfacepresenting a plurality of mobile network carrier options and presenting,for each of the mobile network carrier options, one or more service planoptions and (ii) in response to a selection, by a user of the mobiledevice from the user interface, of one of the plurality of mobilenetwork carriers and a selection of a service plan option for theselected one of the plurality of mobile network carriers, cause themobile device to be activated for use with the selected one of aplurality of mobile network carriers and enable access by the mobiledevice of wireless communication services provided by the selected oneof the plurality of mobile network carriers for the selected serviceplan.

In another aspect, a mobile device has a display, a memory, at least oneprocessor, and executable instructions stored in the memory. Theexecutable instructions, when executed by the at least one processor,(i) cause the mobile device to communicate over a cellular network withone or more remote servers to receive mobile network carrier option datafor the mobile device, wherein the one or more remote servers areoperated by an entity that is not a mobile network carrier identified bythe mobile network carrier option data, (ii) display on the display,based on the received mobile network carrier option data, a userinterface presenting a plurality of mobile network carriers, and (iii)in response to a selection, by a user of the mobile device from the userinterface, of one of the plurality of mobile network carriers, cause themobile device to be activated for use with the selected one of theplurality of mobile network carriers and enable access by the mobiledevice of wireless communication services provided by the selected oneof the plurality of mobile network carriers for a service plan offeredby the selected one of the plurality of mobile network carriers.

The details of one or more embodiments are set forth in the accompanyingdrawings and the description below. Other features will be apparent fromthe description and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 is a flow diagram of a process for providing services to a mobiledevice.

FIG. 2 is a block diagram of a mobile phone that may be used inconnection with the described techniques.

FIG. 3 is a block diagram of a system for supporting a BREW solution.

FIG. 4 is a process and signal flow diagram for providing over the airprovisioning of mobile services.

FIG. 5 depicts a screen sequence that may be displayed on a mobiledevice for a carrier selection application that may be executed on themobile device.

Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

In accordance with the described techniques, mobile phones and othertypes of mobile devices may be produced without preprogramming thedevice with settings that limit use of the mobile device to a particularservice provider and/or that are necessary to use the mobile device witha particular service provider. Instead, the mobile device may be offeredthrough retail outlets with a minimal number of settings that enable themobile device to contact a server that stores additional settings forone or more service providers. When a consumer purchases the mobiledevice, he may activate the mobile device by selecting a serviceprovider and/or calling plan using a “select carrier” application(offered under the mark CARRIER SELECT™) on the mobile device. Inresponse, the server may push the appropriate settings to the mobiledevice over a wireless communication link. The consumer may alsopurchase applications for the mobile device, which also may be pushed tothe mobile device by the server. Thus, operational settings that arenecessary to use the mobile device and applications may be providedthrough “over the air” provisioning.

Once the consumer selects a particular service provider and/or aparticular calling plan, the “select carrier” application may betemporarily disabled (e.g., for a period of three months), whichaccounts for a minimum term of service. Thereafter, however, theconsumer may wish to change service providers and/or calling plans. Oncethe minimum term of service has elapsed, a short messaging service (SMS)message that reactivates the “select carrier” application may be sentfrom the server to the mobile device. The consumer may then use the“select carrier” application to, for example, select a new serviceprovider and/or change calling plans. The “select carrier” applicationor some other application may also be used to perform an over the airupdate of settings in the mobile device that may change over time.

FIG. 1 is a flow diagram of a process 100 for providing services to amobile device. In accordance with the process 100, a request for mobileservice subscription options is received from the mobile device (step105). In some implementations, the request may represent an initialmessage that is sent when a user first activates the mobile device(i.e., after or during the purchase process) using an application thatis stored in the mobile device or that is downloaded at the time of theinitial activation. Alternatively, the request may represent a requestfor new or updated subscription options that may be initiatedautomatically by an application stored in the mobile device or manuallythrough a user's interaction with an application stored in the mobiledevice. The mobile service subscription options may include differentservice providers and/or calling plans.

In response to the request for mobile service subscription options, datarelating to the mobile subscription options may be sent to the mobiledevice (step 110). This data may be sent to the mobile device over awireless communications path. The data may be used by an application onthe mobile device to enable a user to select a particular subscriptionoption or options. A selection of one or more subscription options maybe received from the mobile device over the wireless communications path(step 115). In response to the selection, a service corresponding to theone or more subscription options may be activated (step 120).

For example, the selected subscription option may include a selection ofa particular service provider. In response to this selection, the mobiledevice may be registered with the particular service provider. Inaddition, the selected subscription option may include a specificcalling plan offered by the service provider. In response, the newcalling plan may be associated with the mobile device.

FIG. 2 is a block diagram of a mobile phone 200 that may be used inconnection with the described techniques. The mobile phone 200 includesa transceiver 205 connected to an antenna 210 for communicating voiceand data to and from a remote server, wireline telephone connection,and/or another mobile device through a wireless communication system inaccordance with conventional techniques. For example, the wirelesscommunication system may be a CDMA, GSM, or UMTS network, or any othertype of mobile network. The transceiver 205 is connected to a processor215 that controls the operation of the mobile phone 200, including theoperation of the transceiver 205. A storage medium 220, which may beremovable, read-only, or read/write media and may be magnetic-based,optical-based, semiconductor-based media, or a combination of these, maystore operating system software for the mobile phone 200 and may alsostore at least some settings data. A memory 225 may store additional,less vital information, such as applications that may be loaded into themobile phone 200. In addition, some or all of the settings data for themobile phone 200 and/or for a particular service provider may be storedin the memory 225. Both the memory 225 and the storage medium 220 areconnected to the processor 215. The processor 215 may operate inaccordance with software, applications, or other instructions stored inthe memory 225 and/or the storage medium 220.

In one possible implementation, the mobile phone 200 may have a genericconstruction that does not require the mobile phone 200 to be used withany particular service provider. Thus, instead of having most or all ofthe settings necessary to use the mobile phone 200 with a particularservice provider preinstalled, the mobile phone 200 may have a minimalnumber of settings that provide connectivity to a server from whichsettings for a particular service provider may be downloaded. Inaddition, the mobile phone 200 may include an application that interactswith the server to enable a user of the mobile phone 200 to select acarrier and/or calling plan. As an alternative to a preinstalledapplication, the memory 225 and/or storage medium 220 may storeinstructions for retrieving the application from the server.

The application may be written in Java code, C/C++ code, in accordancewith a Binary Runtime Environment for Wireless (BREW) SoftwareDevelopment Kit (SDK), or some other appropriate format. The storagemedium 220 in the mobile phone 200 may include a Java virtual machine.Alternatively or in addition, the storage medium 220 may include BREWclient software. The BREW platform, which was developed by Qualcomm andis described in greater detail at “www.qualcomm.com/brew,” enables Javaand BREW applications to be easily downloaded onto and executed on themobile phone 200. As another alternative, the storage medium 220 mayinclude software for implementing Motorola's Integrated Digital EnhancedNetwork (iDEN) technology. Although the illustrative implementationsdescribed here focus primarily on the use of BREW technology, thetechniques are not limited to the use of BREW but may be implemented inconnection with other technologies, such as iDEN and Java. In general, aJava virtual machine may be run on top of the BREW client to supportJava applications/applets and other types of extensions may be run ontop of the BREW client to support other types of applications.Applications, such as the “select carrier” application mentioned aboveand other applications that are designed to allow over the airmodification of mobile phone settings, may therefore be easily loadedonto the mobile phone 200.

FIG. 3 is a block diagram of a system 300 for supporting a BREWsolution. A BREW, Java, or other BREW-compatible application may bestored on an application download server (ADS) 305 and may be downloadedfrom the ADS 305, through a wireless network 310, and to a base station315 in the vicinity of a mobile phone 325 for which the application isintended. The base station 315 may in turn transmit the application overa wireless communication link 320 to the mobile phone 325. When anapplication is downloaded from the ADS 305, the ADS 305 collectsapplication download event information and sends it to a transactionmanager 330. The transaction manager 330 combines the download eventinformation with other information, such as application pricingstructure and developer data for the downloaded application, to produceusage records. The transaction manager 330 sends the usage records to abilling server 335, which may perform billing services, such asgenerating invoices. In addition, the billing server 335 may allow anapplication developer, a carrier, and/or a third party associated withthe ADS 305 to run a report and find out how many users are subscribingto a particular service offering or application on an up-to-the-minutebasis.

The ADS 305 may be associated with a particular operator or with a thirdparty. In some implementations, the ADS 305 may be operated by a thirdparty that offers the mobile services for a number of service providers.The ADS 305 may store applications and data for downloading to mobiledevices, including the settings for the different service providers thatcan be downloaded over the air to mobile devices to enable access to theeach provider's services, data regarding service plans, and one or moreapplications that may be downloaded to allow access to and selection ofthe settings and service plan data.

The ADS 305 may also store other applications, which may be developed bythe operator of the ADS 305, by one or more carriers, and/or by thirdparty developers. It is possible that the ADS 305 may offer onlypass-through access to certain carrier and/or third party applications,such that the applications are stored and managed on a server associatedwith the carrier or third party. In some embodiments, however, most orall of the available applications may be stored and managed on the ADS305. The operator of the ADS 305 may have agreements with the carriersor other third party developers to offer the applications and to providefor payment to the carriers or other third party developers.

Applications that are stored on the ADS 305 and that may be downloadedto a mobile device may include applications for activating or changingvirtually any setting and/or functionality of the mobile device using anover the air process. For example, when a new area code is implemented,an application may be installed on a mobile device that allowsmanipulation of a phonebook stored on the mobile device to change thearea code for affected numbers from the old area code to the new areacode. Similarly, if the area code for a mobile phone is to be changed,an application may be downloaded and/or installed to the mobile phonethat allows the ADS 305 to remotely and automatically update thesettings on the mobile phone to change the area code portion of thephone number associated with the mobile phone. An application may alsoallow a new phone number or a portable phone number (i.e., that waspreviously assigned to a different mobile phone by a different provider)to be assigned to and stored in a mobile phone. An application may beinstalled on a mobile device and/or stored in the ADS 305 that allowssoftware patches or fixes to be sent out to disabled mobile devices ormobile devices that are not functioning correctly. Applications may alsoallow the ADS 305 to change settings such as the user's screen saver,ring tone, and backlighting.

The services offered on the ADS 305 may be based on agreements betweenthe operator of the ADS 305 and the service providers for the ADSoperator to act as a sales outlet for the services. By selecting aparticular service provider, a mobile device user may enter into acontractual relationship with the service provider with the ADS operatoracting as an intermediary. Alternatively, the ADS operator may act as amobile virtual network operator (MVNO), in which case the ADS operatoressentially becomes a reseller of cellular airtime and other mobileservices. Thus, the ADS operator purchases the minutes and resells themto the subscriber, and the contractual relationship is between theconsumer and the ADS operator. In either case, the ADS operator mayoffer phones on the market that allow consumers to choose a desiredservice provider and/or service plan.

FIG. 4 is a process and signal flow diagram for providing over the airprovisioning of mobile services. The process and signal flow may beperformed at the point of sale (e.g., by a salesperson at the store) orby the consumer (e.g., after leaving the store). A mobile device 405 maybe marketed and sold with a minimal number of settings that allow themobile device 405 to connect to an ADS 410 associated, for example, withan entity that acts as an MVNO for multiple different actual serviceproviders. These settings may include, for example, an Internet Protocol(IP) address for the ADS 410 and an ESN for the mobile device 405. Inaddition, the mobile device 405 generally needs to include anapplication execution environment, such as BREW or Java, that allows themobile device 405 to execute instructions for performing the initialactivation sequences. Other than a minimal number of settings andinitial activation instructions, however, settings and applications forenabling access to ordinary cellular service and/or to advanced servicesmay be downloaded to the mobile device 405 over the air during or afterthe initial activation.

When the mobile device 405 is first taken out of the box and activated,a setup request signal 415 is sent from the mobile device 405 over awireless communication link to the ADS 410. The setup request signal 415may include the ESN for the mobile device 405 and indicates that themobile device 405 is being activated. The setup request signal 415 mayalso include or be preceded by a security and setup handshake (notshown). In response to the setup request signal 415, the ADS 410 maydownload 420 a carrier select application and associated data to themobile device 405. In some instances, the carrier select application maybe preinstalled on the mobile device 405, in which case the downloadsignaling 420 may simply represent data regarding which carriers areavailable for use with the mobile device 405. The carrier selectapplication may represent a BREW, Java, or other appropriate type ofapplication.

The mobile device 405, using the carrier select application, may thendisplay a menu of the available carriers on a screen (step 425) andreceive a user selection of a particular carrier (step 430). A signal435 identifying the selected carrier may then be sent to the ADS 410.The ADS 410 may respond by downloading available calling plans 440 forthe selected carrier. The mobile device 405, using the carrier selectapplication, may then display a menu of the available calling plans on ascreen (step 445) and receive a user selection of a particular callingplan (step 450). A signal 455 identifying the selected calling plan maythen be sent to the ADS 410.

The ADS 410 may send a signal 460 containing settings for the carrierand/or the calling plan. These settings may be used for and/or necessaryto allow the mobile device 405 to be used with the selected carrierand/or the selected calling plan. The settings in a BREW-basedimplementation may include, for example, a primary domain name server(DNS) IP address (e.g., 166.102.165.11), a secondary DNS IP address(e.g., 166.102.165.11), an ADS commercial server URL (e.g.,singletouch-vipl.qualcomm.com) or IP address, and an ADS test serverURL. Initially, the ADS commercial server URL may store the address forthe ADS that allows the user to download the carrier select applicationand/or associated data. In some cases, this address setting may bechanged once the user selects a particular carrier. In implementationsin which it is desirable to allow the user to subsequently changecarriers through an over the air process (e.g., if the user becomesunhappy with the initially selected service provider and wants to switchto a different carrier after fulfilling a minimum subscription length),however, maintaining the same ADS commercial server address may allowthe user to reselect carriers at some subsequent time and to access theother applications offered by the operator of the initial ADS.

In connection with offering mobile services associated with one or moreservice providers, the ADS 410 may store one or more preferred roaminglists (PRLs), one or more of which is associated with each carrier. Apreferred roaming list is a setting that may be installed on a mobilephone to support roaming functionality. When a mobile phone is taken outof its home area and goes into a roaming mode, the preferred roaminglist may identify the order in which roaming networks are selected,which networks are allowed, and what rates are charged. Storingpreferred roaming lists for multiple carriers on the ADS 410, andallowing them to be downloaded to mobile phones, enables a mobile phoneto be offered without being limited to use with a particular carrier.Thus, selection of a carrier (and downloading of a PRL) may be madeafter purchasing the mobile phone.

Other settings with example values in parenthesis may include anapplication execution environment (AEE) authentication policy(subscriber identification (SID)), AEE privacy policy (BREW or carrier),key use (B-key), OEM programmed B-key (0), carrier ID (55), ADS type(commercial), and mobile identification number (MIN) for SID (true).Additional settings may also be pushed to the mobile device 405 over theair for installation. Typically, a mobile phone includes a large numberof settings and functionalities, at least some of which may be modifiedin accordance with the described over the air processes. In aconventional activation process, such settings are entered by a clerk atthe store where the mobile phone or calling plan is purchased. By usingthe described techniques, however, these settings may be provisioned inan over the air process.

Once the settings are received by the mobile device 405, the carrierselect application (or some other application that has been loaded ontothe mobile device) may install the settings on the mobile device 405(step 465), which activates the mobile device 405 for use with theselected carrier. At any time thereafter and in accordance with standardBREW functionalities, the user or the mobile device 405 may send arequest signal 470 requesting an identification of applications that areavailable for download. In response, a signal 475 identifying theavailable applications may be downloaded from the ADS 410 to the mobiledevice 405. Typically, the ADS 410 may send different lists of availableapplications depending on the type and capabilities of the mobile device405 and the selected carrier and calling plan. The user, using a userinterface on the mobile device 405, may select one or more applications(step 480), and an application download request 485 may be sent to theADS 410. In response, the selected application files may be downloaded490 and stored 495 on the mobile device 405. Thereafter, the applicationmay be used on the mobile device 405 (at least until the applicationsubscription expires or the application is deleted from the mobiledevice 405).

FIG. 5 depicts a screen sequence 500 that may be displayed on a mobiledevice for a carrier selection application that may be executed on themobile device. Initially, a select carrier screen 505 may provide alisting of available service providers, from which a user may select aparticular service provider 510 using keys, a track wheel, or otherinterface components on the mobile device. In the illustrated example,the available service providers are offered through a MVNO arrangement,as indicated by the AirLink designation. Once the user selects aparticular carrier 510, a select price plan screen 515 displays alisting of available calling or service plans. Again, the user mayselect a particular service plan 520 using keys, a track wheel, or otherinterface components on the mobile device. Once the user selects aparticular service plan 520, a service plan detail screen 525 may bedisplayed, which includes a purchase plan button 530 that allows theuser to purchase the selected plan 520. After purchasing the selectedplan 520, over the air (OTA) programming 535 of the appropriate PRL andother settings is performed.

Thereafter, the user may have access to one or more ADS servers (i.e.,an ADS server farm) that contain BREW, Java, and/or other types ofapplications that may be purchased and downloaded onto the mobiledevice. A BREW shop screen 540 may be displayed to allow the user toselect between browsing individual (i.e., a la carte) applications 545or browsing packaged or bundled options 550. If the user opts to browsethe a la carte applications 545, an a la carte application list screen555 is displayed that lists the available individual applications. Theuser may select one of the applications 560, in which case anapplication detail screen 565 is displayed. The application detailscreen 565 includes a purchase application button 570 that allows theuser to purchase the selected application 560. If the user opts tobrowse the bundled options 550, a bundled options list screen 575 isdisplayed that lists the available application/service bundles. The usermay select one of the bundles 580, in which case a bundle detail screen585 is displayed. The bundle detail screen 585 includes a purchasebundle button 590 that allows the user to purchase the selected bundle580.

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made. For example,signals described in connection with FIG. 4 may be combined with othersignals and/or may be separated into multiple separate signals. Inaddition, although the techniques are described in connection with BREWand Java technologies, other platforms may also be used. Accordingly,other implementations are within the scope of the following claims.

What is claimed is:
 1. A mobile device comprising: a display; a memory;at least one processor; and executable instructions stored in thememory, the executable instructions, when executed by the at least oneprocessor, (i) cause the mobile device to communicate over a cellularnetwork with one or more remote servers to receive mobile networkcarrier option data for the mobile device, wherein the one or moreremote servers are operated by an entity that is not a mobile networkcarrier identified by the mobile network carrier option data; (ii)display on the display, based on the received mobile network carrieroption data, a user interface for enabling a user of the mobile deviceto select a mobile network carrier from among a plurality of mobilenetwork carriers that are available to provide wireless service for themobile device; and (iii) in response to a selection, by the user of themobile device from the user interface, of a mobile network carrier fromthe plurality of mobile network carriers, cause the mobile device to beactivated for use with the selected mobile network carrier and enableaccess by the mobile device of wireless communication services providedby the selected mobile network carrier for a service plan offered by theselected mobile network carrier.
 2. The mobile device of claim 1,wherein the executable instructions, when executed by the at least oneprocessor, further cause the mobile device to communicate with the oneor more remote servers to receive settings data for the mobile device.3. The mobile device of claim 2, wherein the settings data includes apreferred roaming list.
 4. The mobile device of claim 1, wherein themobile device is a mobile phone.
 5. The method of claim 1, wherein theuser interface further enables the user of the mobile device to selectservice plan for the selected mobile network carrier from a plurality ofservice plans for the selected mobile network carrier.
 6. Anon-transient computer-readable medium including executable instructionsthat, when executed by a mobile device, cause the mobile device toperform a method comprising: cause the mobile device to communicate overa cellular network with one or more remote servers to receive mobilenetwork carrier option data for the mobile device, wherein the one ormore remote servers are operated by an entity that is not a mobilenetwork carrier identified by the mobile network carrier option data;display on a display of the mobile device, based on the received mobilenetwork carrier option data, a user interface for enabling a user of themobile device to select a mobile network carrier from among a pluralityof mobile network carriers that are available to provide wirelessservice for the mobile device; and in response to a selection, by theuser of the mobile device from the user interface, of a mobile networkcarrier from the plurality of mobile network carriers, cause the mobiledevice to be activated for use with the selected mobile network carrierand enable access by the mobile device of wireless communicationservices provided by the selected mobile network carrier for a serviceplan offered by the selected mobile network carrier.
 7. The mobiledevice of claim 6 wherein the executable instructions, when executed bythe mobile device, further cause the mobile device to communicate withthe one or more remote servers to receive settings data for the mobiledevice.
 8. The mobile device of claim 7, wherein the settings dataincludes a preferred roaming list.
 9. The mobile device of claim 6,wherein the mobile device is a mobile phone.
 10. The mobile device ofclaim 6, wherein the user interface further enables the user of themobile device to select service plan for the selected mobile networkcarrier from a plurality of service plans for the selected mobilenetwork carrier.